# ===== 1. 多变量打印技巧 =====
# 逗号分隔自动添加空格
name = "小明"
age = 18
print(name, "今年", age, "岁")  # 小明 今年 18 岁

# 格式化字符串 (f-string)
print(f"{name}明年将满{age+1}岁")  # 小明明年将满19岁

# 使用sep参数控制分隔符
print("2024", "07", "01", sep="-")  # 2024-07-01


# ===== 2. 变量操作技巧 =====
# 多变量同时赋值
x, y, z = 10, 20.5, "三角形"
print(f"\n形状: {z}, 底: {x}, 高: {y}, 面积: {0.5*x*y}")

# 变量值交换
a = "苹果"
b = "香蕉"
print(f"\n交换前: a={a}, b={b}")
a, b = b, a  # 优雅的交换技巧
print(f"交换后: a={a}, b={b}")


# ===== 3. 数据类型深入 =====
# 大数字表示 (Python会自动处理大整数)
big_num = 10_000_000_000  # 下划线提高可读性
print("\n大数字:", big_num)  # 10000000000

# 浮点数精度控制
pi = 3.1415926535
print("圆周率:")
print("默认:", pi)
print("保留两位:", round(pi, 2))  # 四舍五入
print("格式化输出: {:.3f}".format(pi))  # 3.142

# 字符串操作
text = "Python编程很有趣"
print("\n字符串操作:")
print("长度:", len(text))  # 9 (中文字符也算1个)
print("切片:", text[0:6])  # Python
print("倒序:", text[::-1])  # 趣很有编程nohtyP
print("查找'趣':", "趣" in text)  # True


# ===== 4. 类型转换与检查 =====
# 显式类型转换
score = "95"
print("\n类型转换:")
print("字符串转整数:", int(score) + 5)  # 100
print("整数转浮点数:", float(100))  # 100.0

# 类型检查
print("\n类型检查:")
print(type(10))     # <class 'int'>
print(type(3.14))   # <class 'float'>
print(type("文本")) # <class 'str'>


# ===== 5. 实用综合示例 =====
# 购物小票打印
print("\n===== 超市收据 =====")
item1, price1 = "苹果", 8.5
item2, price2 = "牛奶", 12.0
item3, price3 = "面包", 6.8

print(f"{item1:10}{price1:>6.1f}元")  # 对齐和格式控制
print(f"{item2:10}{price2:>6.1f}元")
print(f"{item3:10}{price3:>6.1f}元")
print("-" * 20)
total = price1 + price2 + price3
print(f"{'总计':10}{total:>6.1f}元")

# 运行结果:
# ===== 超市收据 =====
# 苹果         8.5元
# 牛奶        12.0元
# 面包         6.8元
# --------------------
# 总计        27.3元